Janus: A C++ Template Library for Parallel Dynamic Mesh Applications
نویسندگان
چکیده
We propose Janus | a C++ template library of container classes and communication primitives for parallel dynamic mesh applications. The paper focuses on two phase containers that are a central component of the Janus framework. These containers are quasi-constant, i.e., they have an extended initialization phase after which they provide read-only access to their elements. Two phase containers are useful for the e cient and easy-to-use representation of nite element meshes and generating sparse matrices. Using such containers makes it easy to encapsulate irregular communication patterns that occur when running nite element programs in parallel.
منابع مشابه
Parleda: a Library for Parallel Processing in Computational Geometry Applications
ParLeda is a software library that provides the basic primitives needed for parallel implementation of computational geometry applications. It can also be used in implementing a parallel application that uses geometric data structures. The parallel model that we use is based on a new heterogeneous parallel model named HBSP, which is based on BSP and is introduced here. ParLeda uses two main lib...
متن کاملDomain engineering and generic programming for parallel scientific computing
The development of software for scientific applications that rest on dynamic or irregular meshes causes many problems because of the conflicting issues of flexibility and efficiency. This dissertation addresses these problems in the following way. Firstly, it applies the ideas of domain engineering to the field of data-parallel applications in order to design reusable software products that acc...
متن کاملDynamic Multi-partitioning for Parallel ®nite Element Applications
The central product of the DRAMA (Dynamic ReAllocation of Meshes for parallel Finite Element Applications) project is a library comprising a variety of tools for dynamic re-partitioning of unstructured Finite Element (FE) applications. The input to the DRAMA library is the computational mesh, and corresponding costs, partitioned into sub-domains. The core library functions then perform a parall...
متن کاملGeneric Components for Petascale Adaptive Unstructured Mesh Simulations
In the traditional programming paradigm, data structures and algorithms are developed for specific data types and requirements. This leads to code redundancy and inflexibility thus not allowing effective code reuse for similar applications. One effective approach to increase code reuse is generic programming, which focuses on the development of efficient, reusable software libraries through sui...
متن کاملTWO BLOCKS : 49 X 9 X 9 Mesh
Scienti c and engineering applications often involve structured meshes. These meshes may be nested (for multigrid or adaptive codes) and/or irregularly coupled (called Irregularly Coupled Regular Meshes). We have designed and implemented a runtime library for parallelizing this general class of applications on distributed memory parallel machines in an e cient and machine independent manner. In...
متن کامل